/*
    数组的实例方法：
      includes(el)
      作用：判断el这个元素在不在数组中，用来取代indexOf/lastIndexOf两个方法的，
               相比之下，includes更具语义化，配合if语句使用
      注意：因为includes内部是通过三个等号判断的，
               因此它只能判断基本类型，不能判断引用类型
      返回：如果在，返回true；否则返回false，
 */

const beauty = ['西施', '貂蝉', '杨玉环', '王昭君']

// indexOf
console.log(beauty.indexOf('貂蝉'))// 1
console.log(beauty.indexOf('柳生飘絮'))// -1
// includes
console.log(beauty.includes('貂蝉'))// true
console.log(beauty.includes('柳生飘絮'))// false


// 引用类型的判断
const girls = [
  {
    name: '王昭君',
    height: 170
  }, {
    name: '貂蝉',
    height: 172
  }, {
    name: '西施',
    height: 162
  }, {
    name: '杨玉环',
    height: 169
  }
]
console.log({} === {})// ? false
console.log(
  {
    name: '西施',
    height: 162
  } === {
    name: '西施',
    height: 162
  }
)// ? false
console.log([] === [])// ? false
console.log([1, 2] === [1, 2])// ? false

console.log(
  girls.includes({
    name: '西施',
    height: 162
  })
)// ? false
